﻿using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using MJM.RPP.EntidadesNegocio;
using System.Collections.Generic;
using MJM.Principal;
using MJM.SPP.EntidadesNegocio;

namespace wRegPadron.frmOpciones
{
    public partial class ucContribuyente : System.Web.UI.UserControl
    {
        public static PersonaE objPersonaE;

        public void SetPersona(PersonaE obj)
        {
            objPersonaE = obj;
        }

        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                SubOpcionEN objSubOpcionEN = MediadorCN.GetSubOpcion().ObtenerTexto("MenuContribuyente");
                lblTitulo.Text = objSubOpcionEN.SUBOPT_chNOMSOP;
                lblDescripcion.Text = objSubOpcionEN.SUBOPT_chDESSOP;
                
                ContriPerEN objContriPerEN = MediadorCN.GetContriPer().Obtener(Session["Usuario"].ToString());
                if (objContriPerEN != null)
                {
                    pPanel1.Visible = false;
                    pPanel2.Visible = true;
                    lblDireccion.Text = objContriPerEN.PERCON_chDIRFIS;
                    lblDNI.Text = objContriPerEN.PERCON_chNRODOC;
                    lblNombre.Text = objContriPerEN.PERCON_chNOMCON;
                    lblCodContribuyente.Text = objContriPerEN.PERCON_chCODCONT;
                    lblClaveWeb.Text = objContriPerEN.PERCON_chPASSWEB;
                    lblEmail.Text = objContriPerEN.PERCON_chCORCON;
                    if (objContriPerEN.PERCON_inFLAELI == 2)
                    {
                        btnCancelar.Visible = true;
                        btnConfirmar.Visible = true;
                    }
                    else
                    {
                        btnConfirmar.Visible = false;
                        btnCancelar.Visible = false;
                    }
                }
                else
                {
                    pPanel2.Visible = false;
                    pPanel1.Visible = true;
                }
            }
        }

        protected void btnGrabar_Click(object sender, EventArgs e)
        {

            ContriPerEN objContriPerEN = MediadorCN.GetContriPer().ObtenerSatmun(txtDNI.Text);
            ContriPerEN obj = new ContriPerEN();

            if (txtDNI.Text != "")
            {
                obj.PERCON_chCODCONT = objContriPerEN.PERCON_chCODCONT;
                obj.PERCON_chCORCON = objContriPerEN.PERCON_chCORCON;
                obj.PERCON_chNOMCON = objContriPerEN.PERCON_chNOMCON;
                obj.PERCON_chDIRFIS = objContriPerEN.PERCON_chDIRFIS;
                obj.PERCON_chPASSWEB = objContriPerEN.PERCON_chPASSWEB;
                obj.PERCON_chNRODOC = objContriPerEN.PERCON_chNRODOC;
                obj.USUPAD_P_chUSU = Session["Usuario"].ToString();

                int codigo = MediadorCN.GetContriPer().Insertar(obj);
                if (codigo > 0)
                {
                    pPanel1.Visible = false;
                    pPanel2.Visible = true;
                    lblDireccion.Text = obj.PERCON_chDIRFIS;
                    lblDNI.Text = obj.PERCON_chNRODOC;
                    lblNombre.Text = obj.PERCON_chNOMCON;
                    lblCodContribuyente.Text= objContriPerEN.PERCON_chCODCONT;
                    lblClaveWeb.Text = objContriPerEN.PERCON_chPASSWEB;
                    lblEmail.Text = objContriPerEN.PERCON_chCORCON;
                }
                else
                {
                    lblErrorGrabar.Text = "No se pudo grabar la información";
                }
            }
            else
            {
                lblErrorGrabar.Text = "Ingrese su DNI";
            }
        }

        protected void btnConfirmar_Click(object sender, EventArgs e)
        {
            int codigo = MediadorCN.GetContriPer().Confirmar(Session["Usuario"].ToString());
            if (codigo == 1)
            {
                btnCancelar.Visible = false;
                btnConfirmar.Visible = false;
                lblErrorConfirmar.Text = "Sus datos fueron confirmado correctamente";
            }
            else 
            {
                lblErrorConfirmar.Text = "Sus datos no pudieron confirmarse";
            }
        }

        protected void btnCancelar_Click(object sender, EventArgs e)
        {
            int codigo = MediadorCN.GetContriPer().Cancelar(Session["Usuario"].ToString());
            if (codigo == 1)
            {
                pPanel1.Visible = true;
                pPanel2.Visible = false;
            }
            else
            {
                lblErrorConfirmar.Text = "No se pudo cancelar la confirmación";
            }
        }
    }
}